package xpn.platform.modules.sys.permission;

import java.util.List;
import java.util.Set;

import javax.script.ScriptException;

import xpn.platform.modules.sys.user.SysUser;

/**
 * 授权服务
 * 
 * @author bobatkm
 *
 */
public interface SysPermissionService {
	/**
	 * 获取指定用户的所有权限
	 * 
	 * @param user
	 *            ： 用户对象
	 * @return
	 * @throws ScriptException
	 */
	public Set<String> getUserPermissions(SysUser user) throws ScriptException;

	/**
	 * 检查指定的权限列表是否成立
	 * 
	 * @param request
	 *            ：请求参数
	 * @return
	 */
	public List<CheckPermissionRequest.Rule> checkPermission(CheckPermissionRequest request) throws ScriptException;
}
